1. Field of the Invention
The invention relates to gaming machines generally, and more particularly to gaming machines requiring generation of random numbers.
2. Description of the Related Art
Gaming machines include games of chance such as slot machines. The traditional mechanical slot machine includes three or four symbol-bearing reels, which are rotatably mounted on a common axis. The symbols are located on the peripheries of the reels, and are typically pictures of bells, bars and fruit. There are also "blank" symbols, which are the portions of the reels' peripheries in between the picture symbols. A line (the "win line") is placed adjacent to the reels, so that when the reels are at rest, at least one symbol from each reel is visually associated with the win line.
To play the slot machine, the player spins the reels by pulling a lever which is mechanically linked to the reels. After a brief period of spinning, the reels come to rest, each reel displaying a symbol or blank space along the win line. The displayed combination of symbols is a random game outcome, and corresponds to a predetermined payout, which may be zero. The payout for a particular game outcome usually depends on the probability of that game outcome occurring.
Each reel's final resting position will be one of a plurality of possible predetermined and discrete "reel stop positions." At each reel stop position, a particular part of the reel's periphery (either a symbol or a blank space) is displayed at the win line. Thus, each reel stop position is associated with a particular symbol or blank. In a mechanical slot machine, the probability of a particular symbol being displayed at the win line is N.sub.S divided by N.sub.R, where N.sub.R is the total number of reel stop positions, and N.sub.S is the number of reel stop positions associated with the particular symbol. Where a symbol is associated with only a single reel stop position, its probability of being displayed is one in N.sub.R. Thus, the range or "spectrum" of probabilities that can be developed in each reel of a mechanical slot machine is 1:1 through 1:N.sub.R.
In the 1970's, manufacturers developed electronic versions of the traditional mechanical slot machine. In these electronic machines, the reels are computer controlled, and there is no mechanical linkage between the lever and the reels. Instead, when the user pulls the lever, the computer randomly selects reel stop positions for each of the reels, and then sets the reels into motion with a motor. The reels are allowed to spin for a short time, and then are stopped at the selected reel stop positions.
In effect, the game result for each reel is determined by the computer, with the spinning reels used only to display that result. Thus, in some machines, the reels are eliminated altogether, and the game outcome displayed on a video screen. The video display is often a representation of spinning reels, to preserve the charm and excitement of the traditional slot machine.
In determining a game outcome, the computer simulates the mechanical slot machines by randomly picking reel stop positions for each reel. A table in the computer's memory indicates which symbol (or blank space) is associated with each reel stop position, so the computer can determine the game outcome (that is, the ultimate combination of selected symbols).
In a mechanical reel slot machine, the spinning reel is equally likely to come to rest at one reel stop position as another. Thus, each reel stop position has an equal chance of being "selected." This is referred to as a "uniform probability distribution." For example, in a three-reel uniform probability machine with thirty-two reel stop positions on each reel, the lowest possible probability for a particular game outcome is one chance in 32.sup.3 (or 1:32,768). Assuming each play costs one dollar, the payout for this particular game outcome cannot exceed $32,768, without the game losing money over time to the players.
In an electronic slot machine, the computer also can pick reel stop positions in accordance with a uniform probability distribution. Alternatively, the computer can assign different probabilities to different reel stop positions. This is referred to as "nonuniform probability distribution." The advantage of nonuniform distributions is that they allow the spectrum of game result probabilities to be greatly expanded. Thus, in a nonuniform probability system, certain game outcomes can be assigned low probabilities, such as, for example, one in one million. The corresponding payout can be increased without making the machine unprofitable; in this example, the payout could be one million dollars (assuming a one dollar bet). These high payouts, although extremely rare, are attractive to many players, and therefore are a desirable feature to have on a gaming machine.
One way in which expanded probability spectrums have been implemented in slot machines is by using a "virtual" reel. A virtual reel is a model of a physical reel that exists only in the computer's memory. The virtual reel can have a large number of reel stop positions--far more than a physical reel. Each reel stop position in the virtual reel is associated with a particular symbol. Symbols corresponding to higher payouts are associated with only a few (or even one) virtual reel stop positions. Thus, the probability of a game outcome including such symbols is greatly reduced. Because the virtual reel has more reel stop positions than a physical reel, its probability spectrum is increased.
Another technique for generating random results, both uniform and nonuniform, in gaming machines is the "time-based" method. In the time-based method, game outcomes are represented by the contents of a digital counter or other suitable finite state machine. The counter has a range of zero to thirty-one, for example, and each of its thirty-two possible values corresponds to a game result. The counter rapidly and repetitively cycles through its range. At an arbitrary point in time, a player presses a button and interrupts the counter, leaving it suspended on a particular number. This number is random in the sense that it can not be predicted by the player, and the event corresponding to this number is selected as the game outcome.
It has been recognized that the odds of selecting a particular number (that is, game result) can be varied by adjusting the relative amount of time that the counter holds each number. Thus, if the counter holds one number longer than the others, it is more likely to be holding that number than the others when it is interrupted by the player. Likewise, if the counter spends less time holding a particular number, then it is less likely that the counter will be holding that number when it is interrupted by the player. To vary the time which the counter spends at each number, the counter can be driven by a variable frequency astable multivibrator. Each cycle of the multivibrator generates a pulse, which increments the counter. The duration of the period between pulses is controlled by a series of RC networks, each having a different resistance value. The networks are successively electronically coupled to the multivibrator each time the counter is incremented. Thus, the intervals between pulses (and, consequently, the amount of time the counter spends at each number) vary in accordance with the value of the resistor in the particular RC network which is coupled to the multivibrator.
Where a gaming machine requires more than one random number to be chosen, e.g., a slot machine having more than one reel, achieving truly random results is more difficult. One way to select a random reel stop position for each reel is to use a separate counter and related circuitry for each reel. Although such a system might yield truly random results for each of the reels, additional costs are introduced into the gaming machine due to the additional components. However, in conventional gaming machines, querying the same circuit once for each reel in a multireel machine in order to select a random reel stop position for each reel does not result in truly random results for any reel beyond the first.
For example, in the gaming machine described above, when a player initiates game play, the microprocessor interrupts the counter or other state machine in order to determine a first random number to be translated and displayed as a symbol on the first reel of the slot machine. Because the player's initiation of the game can occur at any point in time and with the counter in any one of its possible states, this first random number is truly random. However, the second and any subsequent "random" numbers generated during the same game by the same circuitry are not truly random. These subsequent "random" numbers are chosen at a predetermined, fixed amount of time after the first random number is chosen and each complete cycle of the counter through all of its states takes the same amount of time. Thus, given the first random number, the second random number is a foregone conclusion--i.e., it will be the value stored in the counter at the fixed amount of time after the first random number is chosen. Therefore, the second random number is not truly random because not all of the potential numbers can be selected as the second random number given the first random number. The same problem occurs for a third reel and any subsequent reels.
This problem is illustrated schematically in FIG. 1. In FIG. 1, an arrow rotates with a constant angular velocity. The circle depicted in FIG. 1 includes 32 sectors of varying size. Each sector represents one number in the range of 0 . . . 31!. These numbers depict schematically the value held by a counter in a nonuniform probability distribution using a time-based method. Thus, the counter holds the different values for different lengths of time because the arrow rotates at a constant speed and the sectors are of different sizes. Thus, in FIG. 1, it can be seen that the counter holds the value "5" for a relatively short period of time and the value "8" for a relatively long period of time. The first random number chosen by the gaming machine is the value at which the arrow points at the randomly chosen starting point of the game--e.g., when the player initiates game play by pushing a button. Once this first random number is selected, the position of the arrow at a fixed amount of time later is predetermined because the arrow rotates at a constant angular velocity. This problem holds true for the second and any subsequently chosen random numbers in a game. Thus, the second and any subsequent random numbers are not truly random.
One way to obtain truly random numbers for the second and subsequent numbers is to incorporate an additional circuit for each subsequent reel for which a random number is chosen. However, this would increase the cost of the slot machine and multiply any maintenance difficulties.
Thus, there is a need for a gaming machine having the ability to produce truly random results on each reel when choosing more than one random number during a game without having the added expense of a dedicated circuit for each random number to be chosen.
Another problem arises due to the fact that current gaming machines do not provide truly random numbers but algorithmically derived pseudo-random numbers generated by a pseudo-random number generator (a "PRNG"). These pseudo-random numbers are often the apparently random and independent output of a finite state machine whose next state is a function only of its current state. By definition, such a machine only has a finite number of states ("Nstates"). Therefore, its output must eventually repeat.
For example, maximal length finite state machine PRNGs having state variables of 16, 32 and 64 bits have Nstates of 65,536; 4.2949.times.10.sup.9 ; and 1.844.times.10.sup.19, respectively. The number of distinct output sequences is at most equal to the PRNG's Nstates because the sequence of outputs from the PRNG is determined by its state prior to the first call to it. Traditionally, gaming machines have had outcomes the most rare of which has a probability of occurring that is much greater than 1/Nstates so that the conformity of the game performance can be ascertained by actually calling the PRNG enough times to verify the performance. However, new games are being proposed for which this is no longer true.
For example, it has been proposed to have a video poker gaming machine with a top prize being awarded for an in-line royal flush (i.e., Ace-King-Queen-Jack-Ten from left to right on the screen). One way to obtain poker hands on a gaming machine is to make ten calls to the random number generator and use the results to obtain the top ten cards of a shuffled deck. The number of cases that must be distinguished is about 5.74.times.10.sup.16 because the order in which the cards appear is important.
As a second example, a keno gaming machine can have an outcome that requires 20 calls to the random number generator to obtain the top 20 balls of a shuffled 80-ball "deck." The order of the draw plays no role so the number of distinguishable cases is about 3.5.times.10.sup.18.
As a third example, a 9-reel slot machine with 100 stops per reel has been proposed. Such a gaming machine would require calling the random number generator 9 times. The number of distinguishable outcomes is 100.sup.9 (or 10.sup.18).
In each of these three examples, it is clear that a 16 or 32 bit PRNG could not produce all possible outcomes. Moreover, it would be difficult to argue that a 64-bit PRNG could produce all outcomes uniformly. This leads to suspicion of any PRNG for use in a game where the number of distinguishable outcomes is such as to preclude testing of sufficient duration to verify that all outcomes occur with a desired prespecified probability. Such testing is not practical for the above-referenced examples. For example, a keno test, with a billion draws per second, would require 100 years to record the 3.5.times.10.sup.18 equally likely draws.
These issues are extremely important in the gaming industry because a proprietor must demonstrate to the satisfaction of gaming regulators that a gaming machine will produce outcomes in accordance with the stated probabilities. The actual physical drawing of balls in a real live keno draw poses no problem in satisfying gaming regulators because the drawing of each ball is a truly independent physical event and, as such, the probability of each of the possible outcomes can be determined from this single physical observation and application of the laws of probability.
Thus, there is a need for a mechanism to be employed in a gaming machine that produces truly independent random results based on an independent physical process so that similar arguments can be used to demonstrate the probabilities of the rare events in games such as the newly proposed games described above.